package org.osomit.sacct.server.config.iface;

import com.google.inject.ImplementedBy;
import org.osomit.sacct.server.config.impl.ServerConfigImpl;

/**
 * @author Jian Fang (John.Jian.Fang@gmail.com)
 *
 * Date: Jul 1, 2009
 */
@ImplementedBy(ServerConfigImpl.class)
public interface ServerConfig {

    public String getAccountFileName();

    public void setAccountFileName(String accountFileName);

    public int getServerPort();

    public void setServerPort(int serverPort);

    public int getPoolSize();

    public void setPoolSize(int poolSize);

    public int getRandomIdLength();

    public int getMaxSessionNum();

    public int getNumToCleanSession();

    public String getSessionExpirationPolicy();

    public long getIdletimeInMilliSeconds();
    
    public boolean isUseOTP();
}
